package imnu.String;

/**
 * @author: lys
 * @类名: Test_02
 * @Title:
 * @date: 2020/7/17
 **/
public class Test_02 {
    public static void main(String[] args) {
        //先去常量池找是否有相同的，若有就直接指向已有的地址，若没有才创建。
        String str = "中华人民共和国，万岁!";
        str = "万万岁";
        String str2 = "中华人民共和国，万岁!";
        int strlength = str.length();
        System.out.println(strlength);
        boolean ok = str.endsWith("!");
        System.out.println(ok);
        int index = str.indexOf("国");
        System.out.println(index);
        //一定会在堆区间创建，并放在常量池中，若常量池有就会赋值，没有则创建。
        String str1 = new String("中华人民共和国，万岁!");
        System.out.println(str1);
        System.out.println(str);
        System.out.println();
        //比较内存地址
        System.out.println(str == str1);
        System.out.println("***********");
        System.out.println(str == str2);
        //比较值
        System.out.println();
        System.out.println(str.equals(str1));
        System.out.println("***********");
        System.out.println(str.equals(str2));

        System.out.println();
        System.out.println(str1+str);

        //String 每增加一个字符，需要重新申请
        //StringBuffer 增加字符可以使用append方法无限叠加，不需要重新申请
        StringBuffer st = new StringBuffer("你好.");
        st.append("万岁。").append("万万岁！");
        System.out.println(st);


    }
}
